<script>
    //编写一个程序将数组扁平化去并除其中重复部分数据，最终得到一个升序且不重复的数组
    var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10];
    
    //实现思路，首先将数组扁平化，再去重，最后排序
    //1.数组的扁平化-方法有好几种，我记2中就行了
    // （1）通过递归实现数组扁平化
    function flat1(arr){
        let res=[]
        arr.map(item=>{
            if(Array.isArray(item)){
                res=res.concat(flat1(item))
            }else{
                res.push(item)
            }
        })
        return res
    }
    console.log(flat1(arr))
    // (2)通过数组的join方法，加上字符串的split方法,
    //数组的join方法有个好处，不管你嵌套了多少层，他都可以把它摊开
    function flat2(arr){
        return arr.join(',').split(',').map(item=>parseInt(item))
    }
    flat2(arr)
    // 数组去重-方法也很多，Set去重，
    console.log([...new Set(flat2(arr))].sort((a,b)=>a-b))
    
</script>









